package com.uml.umlwork.service;

import com.uml.umlwork.dto.classs.AddClassDTO;
import com.uml.umlwork.entity.Class;
import com.uml.umlwork.utils.PageResult;
import com.uml.umlwork.vo.clazz.ClassTeacherVO;
import com.uml.umlwork.vo.clazz.ClassVO;

import java.util.List;
/**
 * @author Zhu
 * @date 2020/12/25
 */
public interface ClassService {


    /**
     * 培训师模块 - 获得培训师负责的所有班级
     * @param current 当前页
     * @param size 每页的数据量
     * @param teacherId 培训师ID
     * @return
     */
    PageResult<ClassTeacherVO> getClassByTeacherId(Long current, Long size, Integer teacherId);

//    List<Class> getAll

    /**
     * 学员模块 - 获取课程的所有开课班
     * @param courseId 课程ID
     * @return
     */
    List<Class> getAllClassesByCourseId(Integer courseId);

    /**
     * 新建培训班
     * @param dto 培训班信息
     */
    void createClass(AddClassDTO dto);

    /**
     * 查询自己负责的培训班
     * @param id 培训师id
     * @return 培训班
     */
    List<ClassVO> getMyClass(String id);

    /**
     * 修改培训班状态
     * @param id 培训班id
     * @param open 状态
     */
    void updateClassStatus(Integer id, Integer open);
}
